Dogfooding the Structural Operational Semantics of mCRL2
نویسنده
چکیده
The mCRL2 language is a formal specification language that is used to specify and model the behavior of distributed systems and protocols. With the accompanying toolset, it is possible to simulate, visualize, analyze and verify behavioral properties of mCRL2 models automatically. The semantics of the mCRL2 language is defined formally using Structural Operational Semantics (SOS) but implemented manually in the underlying toolset using C++. Like with most formal languages, the underlying toolset was created with the formal semantics in mind but there is no way to actually guarantee that the implementation matches the intended semantics. To validate that the implemented behavior for the mCRL2 language corresponds to its formal semantics, we describe the SOS deduction rules of the mCRL2 language, and perform the transformation from the mCRL2’s SOS deduction rules to a Linear Process Specification. As our transformation directly takes the SOS deduction rules and transforms them into mCRL2 data equations, we are basically feeding the mCRL2 toolset its own formal language definition. This report describes (i) the semantics for the untimed fragment of the mCRL2 language, (ii) the transformation of the deduction rules into data equations including the underlying design decisions and (iii) the experiments that have been conducted with our semantic transformation. Despite its formal characterization, thorough study and broad use in many areas, our semantic dogfooding approach revealed a number of (subtle) differences between the mCRL2’s intended semantics, the defined semantics and its actual implementation.
منابع مشابه
Transforming SOS Specifications to Linear Processes
This paper describes an approach to transform a Structural Operational Semantics given as a set of deduction rules to a Linear Process Specification. The transformation is provided for deduction rules in De Simone format, including predicates. The Linear Process Specifications are specified in the syntax of the mCRL2 language, that, with help of the underlying (higher-order) re-writer/tool-set,...
متن کاملDynamic Consistency in Process Algebra: From Paradigm to ACP
The coordination modelling language Paradigm addresses collaboration between components in terms of dynamic constraints. Within a Paradigm model, component dynamics are consistently specified at various levels of abstraction. The operational semantics of Paradigm is given. For a large, general subclass of Paradigm models a translation into process algebra is provided. Examples of a scheduling p...
متن کاملInstance-Aware Model Checking of Graph Transformation Systems using Henshin and mCRL2
Network topologies in distributed and mobile systems can be naturally described using graph-based models. Specifying configurations of such systems is realized by assigning nodes modeling entities in the network to logical locations in the graph. The operational semantics of such models can be formally described using graph transformation systems by modeling the interactive behavior of the enti...
متن کاملCategorical Model of Structural Operational Semantics for Imperative Language
Definition of programming languages consists of the formal definition of syntax and semantics. One of the most popular semantic methods used in various stages of software engineering is structural operational semantics. It describes program behavior in the form of state changes after execution of elementary steps of program. This feature makes structural operational semantics useful for impleme...
متن کاملBialgebras for structural operational semantics: An introduction
Bialgebras and distributive laws are an abstract, categorical framework to study various flavors of Structural Operational Semantics. This papers aims to introduce the reader to the basics of bialgebras for operational semantics, and to sketch the state of the art in this research area.
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2011